#include<bits/stdc++.h>
using namespace std; 

const int n=1000;
int main() {
	char x[n],y[n];
	while(cin>>x>>y) {
		int a[n],b[n],z[2*n]= {0};
		
		int xl=strlen(x),yl=strlen(y);
		int al=0,bl=0;
		
		for(int i=xl-1; i>=0; i--) a[al++]=x[i]-48;
		for(int i=yl-1; i>=0; i--) b[bl++]=y[i]-48;
		
//for(int i=0;i<al;i++) cout<<a[i];cout<<endl;  for(int i=0;i<bl;i++) cout<<b[i];cout<<endl;
	
		for(int i=0; i<al; i++) 
			for(int j=0; j<bl; j++)
				z[i+j]+=a[i]*b[j];
				
		int zl=al*bl;
		int t=0;
		for(int i=0; i<zl; i++) {
			z[i]+=t;
			t=z[i]/10;
			z[i]%=10;
		}
		
		while(!z[zl]) zl--;
		for(int i=zl; i>=0; i--) cout<<z[i];
		cout<<endl;
	}
	return 0;
}
/*
int main(){

char x[1000],y[1000];
    while(cin>>x>>y) {
        int a[1000]={0},b[1000]={0},c[2000]={0},n=0;

        for(int i=strlen(x)-1; i>=0; i--)
            a[n++]=x[i]-'0';
        n=0;
        for(int i=strlen(y)-1; i>=0; i--)
            b[n++]=y[i]-'0';

        for(int i=0;i<1000;i++)
         for(int j=0;j<1000;j++)
             c[i+j]+=a[i]*b[j];
           
           int carry=0;  
        for(int i=0;i<=1999;i++){
            
            c[i]+=carry;
            carry=c[i]/10;
            c[i]%=10;
        }
        
        
        int i=1999;
        while(c[i]==0) i--;
        for(; i>=0; i--) 
            cout<<c[i];
        cout<<endl;






    }}*/

